// pages/song/index.js

console.log(1);
import {getUrl} from '../../api/search'

Page({

    /**
     * 页面的初始数据
     */
    data: {
        active:true,  // 是否在播放 false 播放
        endLed:0,       //总进度
        current:0,     //当前进度
        music:[],     // 音乐信息
        index:0,     // 当前播放歌单的歌曲
        audio:{},
        toobj:[],  // 进来的对象
        selectData:[
            {id:1,name:'0.5',},
            {id:4,name:'2.0',},
            {id:5,name:'2.5',},
            {id:3,name:'3.0',},

        ]
    },

    // 暂停播放
    click(){
        if(this.data.active){
            this.data.audio.play()
        }else{
            this.data.audio.pause()
        }
        this.setData({
            active:!this.data.active
        })
    },
    // 开启2倍
    change(e){
        this.data.audio.playbackRate=e.detail.name - 0
    },

    // 跳转到指定位置
    toSeek(val){
        this.data.audio.seek(val.detail.value)
    },
    // 开始播放
    play(url){
        this.data.audio.autoplay = true
        console.log(this.data.audio);
        this.data.audio.src = url || this.data.music[this.data.index].url
        this.data.audio.loop=true
        // 开始播放
        this.data.audio.onPlay(() => {
          console.log('开始播放')
        //   总长度
        console.log(this.data.audio.duration);
        var a = this.data.audio.duration/60
        var b = this.data.audio.duration%60
        console.log(a,b);
        // 当前长度
        // console.log(this.data.audio.currentTime);
       
        })
        // 加载中的回调
        this.data.audio.onWaiting((res)=>{
            console.log(res);
        })

        // 音频播放进度
        this.data.audio.onTimeUpdate((res)=>{
        console.log(this.data.audio.currentTime);
        this.setData({
            endLed:(this.data.audio.duration),
            current:(this.data.audio.currentTime)
        })
        })
        // 音频跳转回调
        this.data.audio.onSeeked((res)=>{
            console.log(this.data.audio.currentTime);
        })
        this.data.audio.onError((res) => {
          console.log(res.errMsg)
          console.log(res.errCode)
        })
    },

    // 后退
    back(){
        wx.navigateBack()
    },
        
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        const eventChannel = this.getOpenerEventChannel()
        const aa = wx.createInnerAudioContext()
       

        eventChannel.on('acceptDataFromOpenerPage',(id,res1)=>{
            const uid = typeof id === 'object' ? id.id : id
            console.log(id);
            getUrl({
                id:uid
            }).then(res=>{
                this.setData({
                    music:res.data.data,
                    audio:aa,
                    toobj:res1 || id,
                    active:false
                },()=>{
                    this.play(res.data.data[0].url)
                })
            })
        })

    },  

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {
        this.data.audio.destroy()
    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    },
    // 处理时间
    format(val) {
        var shi = chuli((val / 60 / 60).toFixed(0))
        var fen = chuli((val / 60 % 60).toFixed(0))
        var miao = chuli((val % 60).toFixed(0))
        return `${shi - 0 > 0 ? shi + ':' : ''}${fen - 0 > 0 ? fen : '00'}:${miao - 0 > 0 ? miao : '00'}`
    }
})